#include "Shm.hpp"
#include "namedPipe.hpp"

// int main()
// {
//     key_t key = GetComKey(gpathname,gproj_id);
//     std::cout << "key: " << ToHex(key) << std::endl;
    
//     int shmid = GetShm(key,gShmSize);
//     std::cout << "shmid: " << shmid << std::endl;
//     return 0;
// }

// int main()
// {
//     // 1.创建共享内存
//     Shm shm(gpathname,gproj_id,gCreater);
//     // 2.获取共享内存地址
//     char* shmaddr = (char*)shm.Addr();
//     // 3.读取数据
//     while(true)
//     {
//         sleep(1); // 每隔一秒读取一次
//         std::cout << "shm memory content: " << shmaddr << std::endl;
//     }
//     return 0;
// }

int main()
{
    // 1.创建共享内存
    Shm shm(gpathname,gproj_id,gCreater);
    // 2.获取共享内存地址
    char* shmaddr = (char*)shm.Addr();
    // 3.创建管道
    NamePiped fifo(comm_path,Creater);
    fifo.OpenForRead();
    // 4.读取数据
    while(true)
    {
        std::string temp;
        fifo.ReadNamedPipe(&temp);
        std::cout << "shm memory content: " << shmaddr << std::endl;
    }
    return 0;
}

